package com.kingyun.gpsinspection.purificationservice.facade.service.tdm;

import com.kingyun.gpsinspection.purificationservice.facade.model.jsm.EmployeeVo;
import com.kingyun.gpsinspection.purificationservice.facade.model.tdm.*;

import java.util.List;
import java.util.Map;

/**
 * 问题处置措施业务接口
 * Created by sugongche on 2016/11/22.
 */
public interface DisposeMeasureService {
    /**
     * 获取列表页面展示所需的Map结构数据
     *
     * @param employeeVo
     * @param problemVo
     * @return
     * @throws Exception
     */
    Map<String, Object> listMap(EmployeeVo employeeVo, ProblemVo problemVo) throws Exception;

    /**
     * 保存数据
     *
     * @param employeeVo
     * @param problem
     * @param uploadFiles
     * @param deletedFiles
     * @return
     */
    int save(EmployeeVo employeeVo, DisposeMeasure problem, String uploadFiles, String deletedFiles);

    /**
     * 更新数据
     *
     * @param employeeVo
     * @param problem
     * @param uploadFiles
     * @param deletedFiles
     * @return
     */
    int update(EmployeeVo employeeVo, DisposeMeasure problem, String uploadFiles, String deletedFiles);

    /**
     * 根据主键ID查询记录
     * @param measureId
     * @return
     * @throws Exception
     */
    DisposeMeasureVo queryVoById(String measureId) throws Exception;

    /**
     * 根据问题ID查询处置
     * @param problemId
     * @return
     * @throws Exception
     */
    DisposeMeasureVo queryVoByProblemId(String problemId) throws Exception;

    /**
     * 根据主键ID删除
     * @param list
     * @return
     * @throws Exception
     */
    int delByIds(List<String> list) throws Exception;

    /**
     * 根据主键查询
     * @param id
     * @return
     */
    DisposeMeasure queryByPrimaryKey(String id);
}
